home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1997 February / EnigmA AMIGA RUN 15 (1997)(G.R. Edizioni)(IT)[!][issue 1997-02][PLANET CD V].iso / enigma / earcd / sviluppo / svilupp2 / amphn192.lha / src / phonerexx.h < prev    next >
C/C++ Source or Header  |  1996-11-16  |  7KB  |  364 lines

  1. /*
  2.  * Source generated with ARexxBox 1.12 (May 18 1993)
  3.  * which is Copyright (c) 1992,1993 Michael Balzer
  4.  */
  5.  
  6. #ifndef _phonerexx_H
  7. #define _phonerexx_H
  8.  
  9. #define RXIF_INIT   1
  10. #define RXIF_ACTION 2
  11. #define RXIF_FREE   3
  12.  
  13. #define ARB_CF_ENABLED     (1L << 0)
  14.  
  15. #define ARB_HF_CMDSHELL    (1L << 0)
  16. #define ARB_HF_USRMSGPORT  (1L << 1)
  17.  
  18. struct RexxHost
  19. {
  20.     struct MsgPort *port;
  21.     char portname[ 80 ];
  22.     long replies;
  23.     struct RDArgs *rdargs;
  24.     long flags;
  25.     APTR userdata;
  26. };
  27.  
  28. struct rxs_command
  29. {
  30.     char *command, *args, *results;
  31.     long resindex;
  32.     void (*function)( struct RexxHost *, void **, long, struct RexxMsg * );
  33.     long flags;
  34. };
  35.  
  36. struct arb_p_link
  37. {
  38.     char    *str;
  39.     int        dst;
  40. };
  41.  
  42. struct arb_p_state
  43. {
  44.     int        cmd;
  45.     struct arb_p_link *pa;
  46. };
  47.  
  48. #ifndef NO_GLOBALS
  49. extern char RexxPortBaseName[80];
  50. extern struct rxs_command rxs_commandlist[];
  51. extern struct arb_p_state arb_p_state[];
  52. extern int command_cnt;
  53. extern char *rexx_extension;
  54. #endif
  55.  
  56. void ReplyRexxCommand( struct RexxMsg *rxmsg, long prim, long sec, char *res );
  57. void FreeRexxCommand( struct RexxMsg *rxmsg );
  58. struct RexxMsg *CreateRexxCommand( struct RexxHost *host, char *buff, BPTR fh );
  59. struct RexxMsg *CommandToRexx( struct RexxHost *host, struct RexxMsg *rexx_command_message );
  60. struct RexxMsg *SendRexxCommand( struct RexxHost *host, char *buff, BPTR fh );
  61.  
  62. void CloseDownARexxHost( struct RexxHost *host );
  63. struct RexxHost *SetupARexxHost( char *basename, struct MsgPort *usrport );
  64. struct rxs_command *FindRXCommand( char *com );
  65. char *ExpandRXCommand( struct RexxHost *host, char *command );
  66. char *StrDup( char *s );
  67. void ARexxDispatch( struct RexxHost *host );
  68.  
  69. /* rxd-Strukturen dürfen nur AM ENDE um lokale Variablen erweitert werden! */
  70.  
  71. struct rxd_browser
  72. {
  73.     long rc, rc2;
  74.     struct {
  75.         long show;
  76.         long hide;
  77.     } arg;
  78. };
  79.  
  80. void rx_browser( struct RexxHost *, struct rxd_browser **, long, struct RexxMsg * );
  81.  
  82. struct rxd_connect
  83. {
  84.     long rc, rc2;
  85.     struct {
  86.         char *hostname;
  87.         long prompt;
  88.         long force;
  89.     } arg;
  90. };
  91.  
  92. void rx_connect( struct RexxHost *, struct rxd_connect **, long, struct RexxMsg * );
  93.  
  94. struct rxd_connectto
  95. {
  96.     long rc, rc2;
  97.     struct {
  98.         long *entry;
  99.         long prompt;
  100.         long force;
  101.     } arg;
  102. };
  103.  
  104. void rx_connectto( struct RexxHost *, struct rxd_connectto **, long, struct RexxMsg * );
  105.  
  106. struct rxd_daemon
  107. {
  108.     long rc, rc2;
  109.     struct {
  110.         long show;
  111.         long hide;
  112.     } arg;
  113. };
  114.  
  115. void rx_daemon( struct RexxHost *, struct rxd_daemon **, long, struct RexxMsg * );
  116.  
  117. struct rxd_disable
  118. {
  119.     long rc, rc2;
  120. };
  121.  
  122. void rx_disable( struct RexxHost *, struct rxd_disable **, long, struct RexxMsg * );
  123.  
  124. struct rxd_disconnect
  125. {
  126.     long rc, rc2;
  127. };
  128.  
  129. void rx_disconnect( struct RexxHost *, struct rxd_disconnect **, long, struct RexxMsg * );
  130.  
  131. struct rxd_enable
  132. {
  133.     long rc, rc2;
  134. };
  135.  
  136. void rx_enable( struct RexxHost *, struct rxd_enable **, long, struct RexxMsg * );
  137.  
  138. struct rxd_getstate
  139. {
  140.     long rc, rc2;
  141.     struct {
  142.         char *var, *stem;
  143.     } arg;
  144.     struct {
  145.         long *version;
  146.         char *remotename;
  147.         char *voicemaildir;
  148.         char *samplerstate;
  149.         char *lastmemofile;
  150.         long *memo;
  151.         char *sampler;
  152.         char *compression;
  153.         char *xmitenable;
  154.         long *inputgain;
  155.         long *amplify;
  156.         char *inputchannel;
  157.         char *inputsource;
  158.         long *enableonconnect;
  159.         long *xmitonplay;
  160.         long *tcpbatchxmit;
  161.         long *samplerate;
  162.         long *xmitdelay;
  163.         long *threshvol;
  164.         long *browseropen;
  165.         long *filereqopen;
  166.         long *zoomed;
  167.         long *receiverate;
  168.         long *sendrate;
  169.     } res;
  170. };
  171.  
  172. void rx_getstate( struct RexxHost *, struct rxd_getstate **, long, struct RexxMsg * );
  173.  
  174. struct rxd_memo
  175. {
  176.     long rc, rc2;
  177.     struct {
  178.         long start;
  179.         long stop;
  180.         char *filename;
  181.     } arg;
  182. };
  183.  
  184. void rx_memo( struct RexxHost *, struct rxd_memo **, long, struct RexxMsg * );
  185.  
  186. struct rxd_playfile
  187. {
  188.     long rc, rc2;
  189.     struct {
  190.         char *filename;
  191.         long *rate;
  192.         long prompt;
  193.     } arg;
  194. };
  195.  
  196. void rx_playfile( struct RexxHost *, struct rxd_playfile **, long, struct RexxMsg * );
  197.  
  198. struct rxd_quit
  199. {
  200.     long rc, rc2;
  201. };
  202.  
  203. void rx_quit( struct RexxHost *, struct rxd_quit **, long, struct RexxMsg * );
  204.  
  205. struct rxd_setcompression
  206. {
  207.     long rc, rc2;
  208.     struct {
  209.         long adpcm2;
  210.         long adpcm3;
  211.         long none;
  212.     } arg;
  213. };
  214.  
  215. void rx_setcompression( struct RexxHost *, struct rxd_setcompression **, long, struct RexxMsg * );
  216.  
  217. struct rxd_setenableonconnect
  218. {
  219.     long rc, rc2;
  220.     struct {
  221.         long on;
  222.         long off;
  223.     } arg;
  224. };
  225.  
  226. void rx_setenableonconnect( struct RexxHost *, struct rxd_setenableonconnect **, long, struct RexxMsg * );
  227.  
  228. struct rxd_setinputamplify
  229. {
  230.     long rc, rc2;
  231.     struct {
  232.         long *multiplier;
  233.     } arg;
  234. };
  235.  
  236. void rx_setinputamplify( struct RexxHost *, struct rxd_setinputamplify **, long, struct RexxMsg * );
  237.  
  238. struct rxd_setinputchannel
  239. {
  240.     long rc, rc2;
  241.     struct {
  242.         long left;
  243.         long right;
  244.     } arg;
  245. };
  246.  
  247. void rx_setinputchannel( struct RexxHost *, struct rxd_setinputchannel **, long, struct RexxMsg * );
  248.  
  249. struct rxd_setinputgain
  250. {
  251.     long rc, rc2;
  252.     struct {
  253.         long *gain;
  254.         long relative;
  255.     } arg;
  256. };
  257.  
  258. void rx_setinputgain( struct RexxHost *, struct rxd_setinputgain **, long, struct RexxMsg * );
  259.  
  260. struct rxd_setinputsource
  261. {
  262.     long rc, rc2;
  263.     struct {
  264.         long mic;
  265.         long line;
  266.     } arg;
  267. };
  268.  
  269. void rx_setinputsource( struct RexxHost *, struct rxd_setinputsource **, long, struct RexxMsg * );
  270.  
  271. struct rxd_setsampler
  272. {
  273.     long rc, rc2;
  274.     struct {
  275.         long dss8;
  276.         long perfectsound;
  277.         long amas;
  278.         long soundmagic;
  279.         long toccata;
  280.         long aura;
  281.         long ahi;
  282.         long custom;
  283.         long generic;
  284.     } arg;
  285. };
  286.  
  287. void rx_setsampler( struct RexxHost *, struct rxd_setsampler **, long, struct RexxMsg * );
  288.  
  289. struct rxd_setsamplerate
  290. {
  291.     long rc, rc2;
  292.     struct {
  293.         long *rate;
  294.     } arg;
  295. };
  296.  
  297. void rx_setsamplerate( struct RexxHost *, struct rxd_setsamplerate **, long, struct RexxMsg * );
  298.  
  299. struct rxd_settcpbatchxmit
  300. {
  301.     long rc, rc2;
  302.     struct {
  303.         long on;
  304.         long off;
  305.     } arg;
  306. };
  307.  
  308. void rx_settcpbatchxmit( struct RexxHost *, struct rxd_settcpbatchxmit **, long, struct RexxMsg * );
  309.  
  310. struct rxd_setthreshvol
  311. {
  312.     long rc, rc2;
  313.     struct {
  314.         long *threshold;
  315.     } arg;
  316. };
  317.  
  318. void rx_setthreshvol( struct RexxHost *, struct rxd_setthreshvol **, long, struct RexxMsg * );
  319.  
  320. struct rxd_setxmitdelay
  321. {
  322.     long rc, rc2;
  323.     struct {
  324.         long *milliseconds;
  325.     } arg;
  326. };
  327.  
  328. void rx_setxmitdelay( struct RexxHost *, struct rxd_setxmitdelay **, long, struct RexxMsg * );
  329.  
  330. struct rxd_setxmitenable
  331. {
  332.     long rc, rc2;
  333.     struct {
  334.         long hold;
  335.         long toggle;
  336.     } arg;
  337. };
  338.  
  339. void rx_setxmitenable( struct RexxHost *, struct rxd_setxmitenable **, long, struct RexxMsg * );
  340.  
  341. struct rxd_setxmitonplay
  342. {
  343.     long rc, rc2;
  344.     struct {
  345.         long on;
  346.         long off;
  347.     } arg;
  348. };
  349.  
  350. void rx_setxmitonplay( struct RexxHost *, struct rxd_setxmitonplay **, long, struct RexxMsg * );
  351.  
  352. struct rxd_zoom
  353. {
  354.     long rc, rc2;
  355.     struct {
  356.         long big;
  357.         long small;
  358.     } arg;
  359. };
  360.  
  361. void rx_zoom( struct RexxHost *, struct rxd_zoom **, long, struct RexxMsg * );
  362.  
  363. #endif
  364.